package Spiel.Werte.Tests;

import static org.junit.Assert.assertEquals;

import org.junit.Before;
import org.junit.Test;

import Spiel.Werte.Weg;

public class WegTest {

	private Weg weg_0_0_0, weg_1_1_1;

	@Before
	public void setUp() throws Exception {
		weg_0_0_0 = new Weg(0, 0, 0);
		weg_1_1_1 = new Weg(1, 1, 1);
	}

	@Test
	public void testEquals() {
		// Identitaet und Wertgleichheit
		assertEquals(weg_0_0_0, weg_0_0_0);
		assertEquals(weg_0_0_0, new Weg(0, 0, 0));
		assertEquals(weg_1_1_1, new Weg(1, 1, 1));
	}

	@Test
	public void testGetX() {
		// Korrektheit der Wiedergabe
		assertEquals(0, weg_0_0_0.getX(), 0);
		assertEquals(0, new Weg(0, 0, 0).getX(), 0);
		assertEquals(1, new Weg(1, 1, 1).getX(), 0);
	}

	@Test
	public void testGetY() {
		// Korrektheit der Wiedergabe
		assertEquals(0, weg_0_0_0.getY(), 0);
		assertEquals(0, new Weg(0, 0, 0).getY(), 0);
		assertEquals(1, new Weg(1, 1, 1).getY(), 0);
	}

	@Test
	public void testGetZ() {
		// Korrektheit der Wiedergabe
		assertEquals(0, weg_0_0_0.getZ(), 0);
		assertEquals(0, new Weg(0, 0, 0).getZ(), 0);
		assertEquals(1, new Weg(1, 1, 1).getZ(), 0);
	}

	@Test
	public void testGetLaenge() {
		// Korrektheit der Wiedergabe
		assertEquals(0.0, weg_0_0_0.getLaenge(), 0);
		assertEquals(1.0, weg_1_1_1.getLaenge(), 0);
	}

}
